#ifndef FIREWORKPARTICLE_H
#define FIREWORKPARTICLE_H

#include <deque>
#include <vector>

#include "Particle.h"

class FireworkParticle : public Particle {
	public:
		FireworkParticle(Vector3 pos, Vector3 speed, float dragCoefficient, Color color, uint8_t trailLength)
			: Particle{pos, speed, dragCoefficient, color},
			  m_trailLength{trailLength} {};

		~FireworkParticle() {};

		virtual void update(const std::chrono::nanoseconds& delt) override;
		virtual void draw() override;

	private:
		uint8_t m_trailLength;
		std::deque<Vector3> m_oldPos;
		std::vector<Vector3> m_circlePos;

};

#endif
